Menerapkan Environment Variable
Bagi yang belum tahu, environment variables adalah pasangan key-value pada tingkat sistem secara keseluruhan,
yang dapat diakses oleh proses yang berjalan di sistem.
Environment variables sering digunakan untuk membuat aplikasi yang sama dengan perilaku yang berbeda pada lingkungan deploy yang terpisah,
seperti local, develop, staging atau production.
Untuk yang familiar dengan laravel, variable ini disimpan pada file .env.
Untuk yang familiar dengan springboot, variable ini disimpan pada file application.properties.
Pada Golang, untuk membuat atau mengakses environment variables, bisa dengan 2 cara yaitu dengan bantuan external package atau tanpa bantuan external package.
Pada tulisan ini, akan dijelaskan dengan bantun external package.
Package yang digunakan adalah GoDotEnv.
Silahkan buat project Go kemudian pada terminal, silahkan tambahkan package ini dengan command berikut :
go get github.com/joho/godotenv
Selanjutnya, pada project, silahkan buat file .env seperti berikut ini :
# .env file
SITE_TITLE=Test Site
Lalu pada file example.go bisa mengakses variable .env tadi, dengan code berikut :
package main
import (
"fmt"
"github.com/joho/godotenv"
"log"
"os"
)
func main() {
// default will be call .env,
//if different filename, use godotenv.Load(".filenameenv")
err := godotenv.Load()
if err != nil {
log.Fatalf("Error loading .env file")
}
siteTitle := os.Getenv("SITE_TITLE")
fmt.Printf("ini SITE_TITLE dari env : %s", siteTitle)
....
}
Lalu jalankan project Go anda, jika berhasil, maka log aplikasi anda akan menampilkan sebagai berikut :

Referensi :